function Person(sing) {
  this.sing = sing;
  this.jump = function () {
    console.log("jump");
  };
}
Person.prototype.rap = function () {
  console.log("rap");
};

function Children() {}

// 将 Person 构造函数的实例对象赋值给 Children 构造函数的原型，Children 就能拿到 Person 中所有的属性及方法
Children.prototype = new Person("sing");

const c1 = new Children();
const c2 = new Children();
console.log(c1.sing);
c1.jump();
c1.rap();

// 优点：
// 实现简单
// 缺点：
// 数据共享了，c1和c2共享了同一个原型对象
